视频编码器测评 您所在的位置:网站首页 cap rate计算 视频编码器测评

视频编码器测评

#视频编码器测评| 来源: 网络整理| 查看: 265

BD-Rate背景

全称 Bjøntegaard-Delta rate,用于评价不同的视频编码器RD(率-Rate,失真-Distortion)性能 是 Gisle Bjøntegaard 等人在 H.264 标准开发过程中提出的

分类

通常分为:

BD-PSNR 反映相同码率下平均 PSNR(dB) 差值BD-BR(BD-BitRate) 反映相同 PSNR 下平均的码率变化比例(%)测试点的选取

由于测试的工作量比较大,通常只选用4个典型的 QP 值,H.26X 中常采用的是:

22273237

其他编码算法由于量化方法的不同会选择不同的 QP 值,但为了方便比较通常要求器码率画着 PSNR 变化范围相近。

Calc Steps过程中的 log 变换的原因涉及统计学知识,增加数据的线性关系BD-PSNR取积分区间: (minBitRate, maxBitRate)minBitRate: max(min(anchor), min(testCase))maxBitRate: min(max(anchor), max(testCase))码率以 10 为底取对数,以做 log 变换三次函数曲线拟合(拟合方法见“多项式插值”小节)将「3’」的函数在「1’」区间上积分积分差值除以积分区间,以取平均,得到 BD-PSNRBD-BR (BD-BitRate)取积分区间: (minPSNR, maxPSNR)minBitRate: max(min(anchor), min(testCase))maxBitRate: min(max(anchor), max(testCase))码率以 10 为底取对数,以做 log 变换三次函数曲线拟合(拟合方法见“多项式插值”小节)将「3’」的函数在「1’」区间上积分积分差值除以积分区间,以取平均对数反变换(将「5’」的平均值作为 10 的幂),得到testCase(被测编码器)相对于基准编码器(anchor)的倍数「6’」减 1 得到变化率多项式插值(函数图像拟合)

Lagrange 插值容易严重 overshoot,目前的版本中通常采用形状保持的分段三次 Hermite 插值法(SPPCHIP)。

Linear完美区间单调性不平滑Lagrange

相当于 p = 0 的 Hermite

非常平滑严重 overshoot P(x) = \sum_{i=0}^{n-1}a_ix^i=a_0+a_1x+... a_{n-1}x^{n-1} Hermite

\begin{aligned} P^{(j)}(x_k) = y_k^{(j)}, \\ k=1,2,...,n, \\ j=0,1,...,p. \end{aligned}

CHIP形式

三次 Hermite 插值多项式 (Cubic Hermite Interpolation Polynomial, CHIP),一阶可导

n = 2, p = 1 的 Hermite

设已知两点 (x_0, x_1) 和 (x_1, y_1),x_0 导数(d)单调 => min{d_0, d_1}\leq P’(x)\leq max{d_0, d_1} 然后看不懂了…d0 d1 同号不是已知条件啊 如果 d_0-2\delta+d_1\neq0 P’(x) 为二次函数 当 \delta>0d_0+d_1-2\delta0d_k 为这俩的加权调和平均 \begin{aligned} \frac{w_1+w_2}{d_k}=\frac{w_1}{\delta_{k-1}}+\frac{w_2}{\delta_{k}}, \\ w_1=2h_k+h_{k-1}, \\ w_2=h_k+2h_{k-1} \end{aligned}

边界点 d_1, d_n 的一阶导数

d_k=\frac{(2h_p+h_q)\delta_p-h_p\delta_q}{h_p+h_q}, \\ if d_k \delta_p 异号 => d_k=0; \\ else if \delta_p \delta_q 异号 且 |d_k|>|3\delta_p| => d_k=2\delta_p

d_1 的 p q 取前两个, d_n 的 p q 取最后两个​

Spline

分段三次样条插值

比 SPPCHIP 更加平滑,又不会像 Lagrange 严重 overshoot但是区间不一定单调

Spline 与 PCHIP 区别

Spline 更平滑,二阶导数连续如果数据的函数足够平滑,Spline 更精确如果数据不平滑,PCHIP 不会 overshoot 且更少出现震荡PCHIP 使用成本更低ExpandROC (Receiver Operating Characteristic)

用来比较不同分类器的相关性能

横坐标 FPR (costs),纵坐标 TPR (benefits)

ROC Curve 越接近左上角,分类器性能越好,意味着分类器在假阳率很低的同时获得了很高的真阳率

AUC (Area Under the Curve of ROC)ROC 曲线下的面积 BD-Rate 相当于 AUC 物理意义

任取一对(正、负)样本,正样本的 score 大于负样本的 score 的概率。

ReferencesBD-rate https://xjsxjtu.github.io/2017-04-17/RD-rate/#%E7%AE%97%E6%B3%95【机器学习笔记】:一文让你彻底理解准确率,精准率,召回率,真正率,假正率,ROC/AUC https://zhuanlan.zhihu.com/p/46714763机器学习算法常用指标总结 https://tianchi.aliyun.com/forum/postDetail?postId=79707BD-rate计算原理 https://blog.csdn.net/weixin_42348033/article/details/104892903多项式插值之Lagrange、PCHIP与Spline以及BD-Rate和BD-PSNR的计算 https://blog.csdn.net/qq_33552519/article/details/102742715ROC及AUC计算方法及原理 https://blog.csdn.net/yinyu19950811/article/details/81288287客观编码效率指标 https://wangwei1237.gitbook.io/digital_video_concepts/shi-pin-zhi-liang-du-liang/4_2_0_videoqualityevaluationmethodsandmetrics/4_2_2_0_objectivevideoqualityevaluationmethodsandmetrics/4_2_2_9_objectivecodingefficiencymetrics在统计学中为什么要对变量取对数? https://www.zhihu.com/question/22012482/answer/21357107Example Code

我的 TypeScipt 实现:(YoungSx/bjontegaard.js)[https://github.com/YoungSx/bjontegaard.js]

Changelog20210722: BD-PSNR 计算步骤有误,之前多出了类似 BD-BR 的后续步骤,现已修改


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有